package cn.aj.user.dto;

import cn.aj.basic.utils.MD5Utils;
import cn.aj.basic.utils.StrUtils;
import cn.aj.user.domain.User;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import java.util.Date;

@Data
public class PhoneRegisterDto {
    @NotBlank(message = "手机号码不能为空!")
    private String phone;
    @NotBlank(message = "手机短信验证码不能为空!")
    private String msgCode;
    @NotBlank(message = "注册第一次密码不能为空!")
    private String password;
    @NotBlank(message = "注册第耳次密码不能为空!")
    private String passwordRepeat;

    public User getUser() {
        // 盐值
        String salt = StrUtils.getComplexRandomString(32);
        // 密码
        String passwords = MD5Utils.encrypByMd5(salt + this.getPassword());
        return User.builder()
                .username(this.phone)
                .phone(this.phone)
                .salt(salt)
                .password(passwords)
                .state(1)
                .createtime(new Date())
                .build();
    }
}
